\documentclass[12pt,a4paper]{article}

\usepackage{longtable}
\usepackage{ucs}
\usepackage[utf8x]{inputenc}
\usepackage[spanish, activeacute]{babel}
\usepackage{a4wide}
\usepackage{amssymb}
\usepackage{listings}
\usepackage[pdftex]{graphicx}

\lstset{basicstyle=\small\ttfamily,
		breaklines = true,
		tabsize=2,
		frame=lines,
		numberstyle=\tiny,
		columns=flexible,
		extendedchars=\true,
		inputencoding=utf8x}

\begin{document}

\newpage
\section{Descripción}

Se corrigió con respecto a la entrega original un error que teníamos al parsear tokens para operaciones de
resta y división. Originalmente, no se distinguían estos símbolos (\texttt{-} y \texttt{/}) de los de sus
operaciones inversas (\texttt{+} y \texttt{*}). Esto hacía, por ejemplo, que una entrada con restas se mostrara
en el código formateado de salida como una suma.

Para corregirlo, se agregaron al analizador léxico otros tokens para reconocer estos símbolos, llamados 
\texttt{SUBOPP} y \texttt{DIVOPP}, y se cambiaron las reglas de \texttt{ADDOPP} y \texttt{PRODOPP} para que 
reconozcan sólo los símbolos de suma y multiplicación, respectivamente.

La solución alternativa que se había mencionado en algún momento consistía en dejar la definición de tokens como
está pero, al momento de reconocer un token de los mencionados, guardar cuál es el símbolo que se leyó (de forma
similar a como se guarda el nombre de una variable al reconocer un token de tipo \texttt{ID}). De esta forma,
al escribir la salida se pasaría como argumento de la función \texttt{HTMLWriter.writeOP} el símbolo guardado
(en vez de decidir si se pasa un \texttt{+} o un \texttt{-} según cuál fue el token leído).

Este cambio hizo que se corrigieran los resultados de tres de las pruebas que se incluyeron en el informe
anterior, por lo que se incluyen en la página siguiente los resultados actualizados. A su vez agregamos algunas
pruebas adicionales en que se muestra la reacción del parser ante errores léxicos.


\input{resultados.tex}


\end{document}

